# -*- coding:utf-8 -*-
#2022/1/10 20:34
# author:xwl

from pydantic import BaseModel

class calculation_data(BaseModel):
        cal_data:list=[{
                'Well_Name': 'str',
                'Stim_Date': '0000-00-00',
                'StimType_Name': 'str',
                'Stim_ValidPeriod': 'int',
                'Stim_IncreOil': 'float',
                'Stim_Cost': 'float',
                'Oil_CommodityRatio': 'float',
                'Oil_Price': 'float',
                'Oil_OprCost': 'float',
                'OilSale_TotalTaxRatio': 'float',
                'Money_Discount': 'float',
                'Remark': 'str'
            }]

class input_data(BaseModel):
    # xwl
    data: list = [{
        'Well_Name': 'str',
        'Stim_Date': 'str',
        'StimType_Name': 'str',
        'Stim_ValidPeriod': 'int',
        'Stim_IncreOil': 'float',
        'Stim_Cost': 'float',
        'Oil_CommodityRatio': 'float',
        'Oil_Price': 'float',
        'Oil_OprCost':'float',
        'OilSale_TotalTaxRatio':'float',
        'Money_Discount': 'float',
        'Remark': 'str',
    }]
    oilcost: list = [{
        "DvpUnit_Name": "String",
        "Year": "String",
        "Oil_OprCost": "double",
        "FuelCost": "double",
        "Power_Cost": "double",
        "FluidDispose_Cost": "double",
        "OilDisplaceAgent_Cost": "double",
        "NGLRecovery_Cost": "double",
        "Transp_Cost": "double",
        "WellTest_Cost": "double",
        "Other_Cost": "double",
        "Depre_Cost": "double",
        "Remark": "String"
    }]
    ratio: list = [{
        "DvpUnit_Name": "String",
        "Year": "String",
        "OilSale_TotalTaxRatio": "double",
        "AddedValue_TaxRatio": "double",
        "Resource_TaxRatio": "double",
        "EduAdd_TaxRatio": "double",
        "CityDvpAdd_TaxRate": "double",
        "Income_TaxRate": "double",
        "ManageCost_Ratio": "double",
        "Remark": "String"
    }]

class well_save_out_data(BaseModel):
    data:list=[{
            'Well_Name':"str",
            'Stim_Date':"2000-10-10",
            'StimType_Name':"测试1",
            'Stim_ValidPeriod':"int",
            'Stim_IncreOil':"float",
            'StimCost':"float",
            'StimOil_WellOprCost':"float",
            'StimOil_CommodityRatio':"float",
            'StimOil_Gross_SalesIncome':"float",
            'StimOil_Total_Tax':"float",
            'StimOil_Static_Gains':"float",
            'StimOil_NPV':"float",
            'StimOil_ROI':"float",
            'StimOil_NPVR':"float",
            'StimOil_FIRR':"float",
            'Stim_IncreOil_Critical':"float",
            'StimOil_Price_Critical':"float",
            'Oil_Price':"float",
            'OilSale_TotalTaxRatio':"float",
            'Money_Discount':"float",
            'Oil_OprCost':"float",
            'Remark':"str"
        }]